The present invention relates to implantable stimulators, e.g., an implantable neural stimulator, and more particularly to a system and method for programming the magnitude (e.g., amplitude) of the stimulation pulses that are generated by such neural stimulator. The invention may be used with a wide variety of neural stimulators, e.g., spinal cord stimulators, brain stimulators, urinary incontinence stimulators, cochlear stimulators, and the like.
Neural stimulation systems of the type with which the present invention may be used are described in the art, e.g., in U.S. Pat. No. 5,603,726. Such stimulator systems typically include: (1) an implantable pulse generator; (2) an electrode array connected to the implantable pulse generator; and (3) some means, e.g., an external programmer, for controlling or programming the implantable pulse generator. In operation, the implantable pulse generator generates an electrical stimulation pulse, or pulse sequence, in accordance with a prescribed pattern or stimulation strategy. Each pulse may be programmed or set to a desired magnitude (amplitude and/or pulse width), and applied at a set or programmed rate (or frequency) to surrounding body tissue through a selected pair or grouping of electrode contacts of a multiple electrode array.
U.S. Pat. No. 5,895,416 teaches one type of method and apparatus for controlling and steering an electric field. The ""416 patent steers the size and location of the electric field in order to recruit only target nerve tissue and exclude unwanted nerve tissue. Such steering is done by changing the voltage amplitude at each anode in response to changes in electrode impedance of an electrode array in order to maintain a constant anodic current.
Unfortunately, programming implantable stimulators that have multi-electrode contacts can be a very time consuming task. This is particularly true for a spinal cord stimulation system, or similar system, where there are typically 8 to 16 electrode contacts on the electrode array through which the stimulation pulses are applied to the spinal nerves. With 8 to 16 electrode contacts there are thousands and thousands of possible electrode combinations. The goal of programming a spinal cord stimulator, or similar neural stimulator, is to figure out which electrode combinations of the thousands that are possible should be used to apply electrical stimulus pulses (each of which can theoretically be programmed to have a wide range of amplitudes, pulse widths, and repetition rates) so as to best serve the patient""s needs. More particularly, the goal of programming a spinal cord stimulator, or other neural stimulator, is to optimize the electrode combination of anodes and cathodes, as well as the amplitude, pulse width and rate of the applied stimulation pulses, so as to allow the stimulator to best perform its intended function, e.g., in the case of a spinal cord stimulator, to relieve pain felt by the patient. The manual selection of each electrode combination and the stimulus parameters that are used with such electrode combination (where the xe2x80x9cstimulus parametersxe2x80x9d include amplitude, pulse width, and repetition rate or frequency) is an unmanageable task. What is needed is a system and method for programming a neural stimulator, such as a spinal cord stimulator, that automates much of the programming process using interactive programs, and in particular wherein the amplitude of the applied stimulus may be programmed in a way that facilitates the use of automated and interactive programs safely and effectively.
A disadvantage associated with many existing neural stimulators is that such systems cannot independently control the amplitude for every electrode in a stimulating group of electrodes, or xe2x80x9cchannelxe2x80x9d. Thus, stimulation fields cannot be highly controlled with multiple stimulating electrodes. Instead, a constant voltage is applied to all electrodes assigned to stimulate a target site at any given time (wherein the electrodes thus assigned are referred to as a xe2x80x9cchannelxe2x80x9d). While such approach may make programming such stimulator a much more manageable task (because the number of possible electrodes and parameter choices are severely limited), such limitations may prevent the stimulator from providing the patient with an optimal stimulation regimen. What is needed, therefore, is a neural stimulator wherein all of the possible electrode combinations and parameter settings can be used, and wherein a programming technique exists for use with such neural stimulator whereby an optimum selection of electrode combinations and parameters settings may be quickly and safely identified and used.
To illustrate the problem that a clinician or other medical personnel faces when programming a typical neural stimulator wherein each electrode on an electrode array may be tested, consider the following example. The clinician typically performs an electrode test in terms of the patient""s response, e.g., by selecting a set of electrodes (assigning anodes and cathodes), setting a pulse width and rate, and by then increasing the amplitude until the patient begins to feel stimulation. The clinician continues to increase the stimulation amplitude until the stimulation is strongly felt, and then the patient is asked the location where the stimulation is felt. The stimulation is then turned off and the steps are repeated for the next electrode set, until the clinician has a good map of the stimulation coverage by an electrode array. Disadvantageously, however, the clinician cannot simply jump from one set of electrodes within the array to a next set of electrodes within the array and back again while the stimulation is turned on because the perception thresholds vary. What is needed is a system or apparatus that does not require that the clinician turn off the stimulation and start over, increasing the amplitude for each electrode set, but rather allows the clinician to compare back and forth between electrode sets while continuously obtaining patient feedback. What is further needed is a system or apparatus wherein the clinician does not have to start over every time he or she repeats a formerly-tested electrode set. Unfortunately, with current programming approaches, because there is no means to automatically adjust the magnitude of stimulation, the clinician must start over every time another electrode set is selected.
The threshold ranges derived from such clinician tests usually vary from one electrode to the next. That is, at a given pulse width the perception threshold at a first electrode may be 2 milliamps (mA), (or 2 volts (V) at 1000 ohms), with a maximum tolerable threshold of 7 mA (or 7 V at 1000 ohms). At that same pulse width, the perception threshold at a second electrode may be 3 mA (or 3 V at 1000 ohms), with a maximum tolerable threshold of 6 mA (or 6 V at 1000 ohms). Thus, switching from one electrode to the next at a constant current or voltage level may not be done without the patient feeling perceptual intensity differences. Moreover, automatically switching between electrodes at constant parameter outputs could result in unintentionally exceeding the maximum tolerable threshold associated with a particular electrode where the maximum tolerable threshold of the electrode is less than the maximum tolerable threshold of another electrode. As a result, the typical method for testing electrode combinations, as described above, is to start with the output at zero for every combination of electrodes (including combinations which result in too many combinations to test), and gradually increase the amplitude to a comfortable level, and then have the patient respond to paresthesia or other coverage. No quick or rapid electrode switching can be done. It is thus evident that what is needed is a system and method of equalizing the perceived amplitude, and to thereby enable quick, automated, and/or interactive (i.e., directional programming) methods.
The present invention addresses the above and other needs by providing a system and method for programming the magnitude of electrical stimuli generated and applied by a neural stimulator. e.g., a spinal cord stimulator. The electrical stimuli are applied through selected groupings of individual electrode contacts of a multi-electrode-contact electrode array attached to pulse generation circuitry as either cathodes or anodes. The electrode array is implanted so that the individual electrode contacts are in contact with the body tissue to be stimulated. Stimulating electrical current pulses, defined by a prescribed set of stimulus parameters, e.g., pulse amplitude, pulse width and pulse repetition rate, are generated and applied to the selected electrode contacts so as to flow from the anode electrodes to the cathode electrodes. As the current pulses flow through the body tissue, the electrical current causes the neural stimulator to carry out its intended function, e.g., triggering a desired neural response or blocking an undesired neural activity. The present invention advantageously provides a programming system or method whereby the perceived magnitude of the applied stimuli is equalized in order to enable quick, automated, and/or interactive selection of the stimulation parameter values that are used by the stimulator.
In accordance with one aspect of the invention, the invention may thus be characterized as a method of operating an implantable neural stimulator. The implantable neural stimulator with which such method is used typically includes a programmable pulse generator circuit that is housed within a sealed case. An electrode array is connected to the neural stimulator. The sealed case may function as a reference electrode for some electrode configurations. The electrode array has a plurality of electrode contacts, identified as electrodes 0, 1, . . . n, where n is an integer of at least one (so that electrodes 0 and 1 comprise the at least two electrodes). In one embodiment, for example, n may be an integer of, e.g., three (so that there are four electrodes, electrodes 0, 1, 2 and 3). In another embodiment, n may be an integer of, e.g., 15 (so that there are sixteen electrodes, electrodes 0, 1, 2, . . . 15). The invention may be used with any number n of electrodes.
The method of operating the neural stimulator, broadly stated, comprises: (a) measuring and recording at least one perception point, e.g., a minimum perception threshold level or a comfortable threshold level, for all of the electrode contacts and combinations thereof, or (where the number of electrode contacts and combinations thereof is too large to measure) measuring at least one perception point for a selected subset of the electrode contacts and combinations; (b) estimating and recording perception points for unmeasured electrode contacts or sets of electrode contacts; and (c) mapping the recorded measured and/or estimated values to magnitude levels for use with other designated stimulation parameters.
In accordance with another aspect of the invention, the invention may be characterized as a neural stimulation system wherein an optimal set of stimulus parameters may be determined and programmed into the system. Such system includes: (a) an implantable neural stimulator comprising a sealed case, and having pulse generation circuitry contained inside of the case that is adapted to generate a stimulus pulse in accordance with programmed stimulus parameters; (b) an electrode array having a multiplicity of electrode contacts, wherein each of the multiplicity of electrode contacts may be selectively connected to the pulse generation circuitry within the implantable neural stimulator; (c) a known threshold level, e.g., a known perception threshold level, a known comfortable threshold level, and/or a known maximum tolerable threshold level, for at least a plurality of the multiplicity of electrode contacts, where such known threshold levels are typically expressed in units of current or voltage; and (d) an equalizer circuit or system or technique (hereafter referred to simply as an xe2x80x9cequalizerxe2x80x9d) that equalizes the threshold level(s) to unit-less magnitude levels. In a preferred embodiment, the equalizer further estimates corresponding unit-less magnitude levels for any electrode contacts, or combination of electrode contacts, for threshold levels not initially known or measured. Once the unit-less magnitude levels are known or estimated for each electrode within a given electrode set, the neural stimulation system may thereafter automatically set or adjust the magnitude of the stimulus applied through the given electrode set when such given electrode set is selected as the electrode set through which stimulation is to be applied. Advantageously, such neural stimulation system allows stimulation to be applied through different electrode sets without having to ramp the amplitude up from a zero value for each electrode set selected. Hence, a clinician using such neural stimulation system may immediately jump between two or more electrode sets, each of which has the stimulation magnitude levels automatically adjusted to, e.g., a minimum perception threshold level, a maximum tolerable threshold level, or a selected value between the minimum perception and maximum tolerable threshold levels, as different stimulus parameters are tested.
Any of numerous techniques and approaches known in the art may be used to measure perception threshold and maximum tolerable thresholds. Similarly, any one of numerous stimuli-application circuits and testing techniques known and practiced in the art may be used for applying a stimulus of a prescribed magnitude to one or more electrodes and testing whether such application produces a desired result. For an SCS system, the desired result will typically involve determining, e.g., whether the resulting paresthesia sensed by the patient sufficiently blocks pain felt by the patient.
The xe2x80x9cequalizerxe2x80x9d referenced in the system described above is at the heart of the present invention. Such equalizer advantageously equalizes the perception threshold measurement and the maximum tolerable threshold measurement to unit-less magnitude levels for all of the electrode contacts such that level x of one electrode configuration has an equal intensity perception as another electrode configuration set at level x. Once such equalization has been performed, the magnitude levels may thereafter be used to set the magnitude of the stimulation levels without the need to manually ramp up or ramp down the stimulus magnitude at each electrode contact, as is required in the prior art.
The equalizer may be realized in software, firmware, or hardware. Typically, equalization is performed by (i) storing the perception threshold measurement and the maximum tolerable threshold measurement for each electrode contact; (ii) mapping the perception threshold measurement of each electrode contact to a first number magnitude level; and (iii) mapping the maximum tolerable threshold measurement to a second number magnitude level. A stimulus having the first number magnitude level causes an electrode contact receiving that stimulus to receive a stimulus having a magnitude equal to the perception threshold measurement for that electrode contact. Similarly, a stimulus having the second number magnitude level causes an electrode contact receiving that stimulus to receive a stimulus having a magnitude equal to the maximum tolerable threshold measurement for that electrode contact. In a preferred implementation, the first number magnitude level is assigned to be a low value, e.g., xe2x80x9c1xe2x80x9d, and the second number magnitude level is assigned to be a higher value, e.g., xe2x80x9c10xe2x80x9d. A stimulus having a magnitude level greater than xe2x80x9c1xe2x80x9d and less than xe2x80x9c10xe2x80x9d causes a stimulus to be applied that is somewhere between the perception threshold and maximum tolerable threshold. Typically, the stimulus magnitude increases as the magnitude level number (which is a unit-less number) increases. That is, a magnitude level xe2x80x9cmxe2x80x9d causes a stimulus to be generated that has a magnitude greater than a stimulus having a magnitude level xe2x80x9cmxe2x88x921xe2x80x9d, where m is an integer of from 1 to 10, and where a magnitude level xe2x80x9c0xe2x80x9d stimulus comprises a stimulus having zero magnitude.
Where there are a large number of electrode contacts, making it impractical to measure threshold levels for all possible combinations of the electrode contacts, only a subset of the possible electrode contacts need to be measured, and thereafter the unit-less magnitude levels for the non-measured electrode contacts may be estimated. For example, if there are sixteen electrode contacts arranged in line within a linear array, it would typically only be necessary to measure threshold levels, and assign corresponding unit-less magnitude levels, for the two electrode contacts at the edges of the array. Unit-less magnitude levels may then be estimated for the electrode contacts that reside between the outer two electrode contacts using an appropriate estimation algorithm, such as a linear extrapolation.
Further, it is not always necessary to measure, for a given electrode configuration for which a measurement is being made, both the minimum perception threshold level and the maximum tolerable threshold level. Rather, in many instances, all that is required is to measure a single threshold level, e.g., a comfortable threshold level, from which single threshold measurement a corresponding unit-less magnitude threshold level may be assigned, and from which other unit-less magnitude levels may be estimated for electrode contacts similarly configured. For example, where the unit-less magnitude levels range from xe2x80x9c1xe2x80x9d (corresponding to the minimum perception threshold level) to xe2x80x9c10xe2x80x9d (corresponding to a unit-less magnitude level xe2x80x9c10xe2x80x9d), a comfortable unit-less magnitude level xe2x80x9c5xe2x80x9d could be equalized with a proportionate range approximated around the level xe2x80x9c5xe2x80x9d to give a reasonable operating range. This advantageously reduces the number of measured points required, but disadvantageously is less accurate.
A principle advantage offered by the invention is the ability to dynamically switch between electrode sets while the stimulation is continuously applied. Such advantage allows immediate comparisons of stimulation to be made without having to reset the stimulation magnitude, and while maintaining a relatively constant perception of intensity or magnitude of stimulation, thereby avoiding over or under stimulation.
Further, the invention does not require that threshold measurements be taken for all possible electrode configurations. Rather, a subset of the possible electrode configurations may be measured, and from such measurements estimates may be made of the unmeasured thresholds with relative accuracy. For example, unit-less threshold levels for bipolar, monopolar, tripolar, and multipolar combinations may be readily estimated from actual threshold measurements taken from a subset of tested electrodes.
A feature of the invention is the ability to store adjustments made to stimulation levels for estimated electrode thresholds so that the system learns corrections to the estimated equalized levels.
Another feature of the invention is the ability of the system to adjust and compensate the perception stimulus when the pulse width is changed.